﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{public class Monster
{  
    public String name; 
    public Int32 lives = 50,             
        
        power,              
        damage;   
    Int32[] attDef = new Int32[4];     
    public Monster(String n) 
    {     
        name = n;  
    }
    public Boolean isDead() 
    {
        if (lives <= 0)
            return true;
        else return false;
    } 
    public void enterData()   
    {
        power = 30;                                         
        Console.WriteLine("Доступно {0} очков. Введите:\nАтаку головы, атаку туловища, защиту головы, защиту туловища", power);
        for (Int16 i = 0; i < 4; i++)                        
        {
            Int32 k = Convert.ToInt32(Console.ReadLine());    
            while (k > power)          
            {
                Console.WriteLine("!!! Превышены очки. Вводи заново");
                k = Convert.ToInt32(Console.ReadLine());       
            }
            attDef[i] = k;                                    
            power -= attDef[i];                               
            Console.WriteLine("Осталось {0} очков", power);  
        } 

    }  
    public void attack(Monster Enemy) 
    {
        
        Int32 damHead = Enemy.attDef[0] - attDef[2];    
        if (damHead < 0) damHead = 0;               
        Int32 damBody = Enemy.attDef[1] - attDef[3];   
        if (damBody < 0) damBody = 0;   damage = damHead + damBody;                    
        lives -= damage;                            
        Console.WriteLine("Монстр {0}: нанесен урон {1}, жизней осталось {2}", name, damage, lives);
    }

};

    class Program
    {
        static void Main(string[] args)
        {
            {   Monster M1=new Monster("зиг");      
               
                Monster M2=new Monster("орк");   
                while (!M1.isDead() && !M2.isDead())  
                {     
                    Console.WriteLine("Данные монстра {0}:", M1.name);    


                    M1.enterData();                     
                    Console.Clear();                      
                    Console.WriteLine("Данные монстра {0}:", M2.name);   
                    M2.enterData();                       
                    Console.Clear();      Console.WriteLine("БИТВА!");    
                    M1.attack(M2);                         
                    M2.attack(M1);                        
                    Console.ReadLine();                    
                    Console.Clear();   
                }
           
                
                Console.WriteLine();
            
                Console.ReadLine();
            }



        }
    }
}
